[XEN][POWERPC] Fix xchg macro.
authorHollis Blanchard <hollisb@us.ibm.com>
Thu, 12 Apr 2007 15:27:05 +0000 (10:27 -0500)
committerHollis Blanchard <hollisb@us.ibm.com>
Thu, 12 Apr 2007 15:27:05 +0000 (10:27 -0500)
Signed-off-by: Jerone Young <jyoung5@us.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
xen/include/asm-powerpc/system.h

index 7eb41c9325fc92daad107619b174262ebc9da8ba..c0f21c64d03423d1e3d493e5d2ea53118569b939 100644 (file)
 #include <asm/processor.h>
 #include <asm/msr.h>
 
-#define xchg(ptr,v) ((__typeof__(*(ptr)))__xchg((unsigned long)(v),(ptr),sizeof(*(ptr))))
+#define xchg(ptr,x)                                                           \
+({                                                                            \
+       __typeof__(*(ptr)) _x_ = (x);                                          \
+       (__typeof__(*(ptr))) __xchg((ptr), (unsigned long)_x_, sizeof(*(ptr))); \
+})
 
 static __inline__ unsigned long
 __xchg_u32(volatile int *m, unsigned long val)